package net.lab1024.sa.admin.module.business.yct.yctTeeth.domain.form;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import io.swagger.v3.oas.annotations.media.Schema;
import java.time.LocalDateTime;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import lombok.Data;
import net.lab1024.sa.base.common.json.deserializer.DictValueVoDeserializer;
import net.lab1024.sa.base.common.json.deserializer.FileKeyVoDeserializer;

/**
 * 易齿通口腔门诊 更新表单
 *
 * @Author zhangben
 * @Date 2024-11-07 09:39:15
 * @Copyright 20241107
 */

@Data
public class YctTeethHospitalUpdateForm {

    @Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "主键id 不能为空")
    private Long hospiatlId;

    @Schema(description = "上级id")
    private Long hospiatlParentId;

    @Schema(description = "门诊名称", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "门诊名称 不能为空")
    private String name;

    @Schema(description = "联系电话")
    private String tel;

    @Schema(description = "营业时间")
    private String businessHours;

    @Schema(description = "描述")
    private String description;

    @Schema(description = "类型1连锁 ", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "类型1连锁  不能为空")
    private Long classType;

    @Schema(description = "状态1认证 2未认证", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "状态1认证 2未认证 不能为空")
    private Long classStatus;

    @Schema(description = "客服1启用 2未启用", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "客服1启用 2未启用 不能为空")
    @JsonDeserialize(using = DictValueVoDeserializer.class)
    private String openStatus;

    @Schema(description = "客服跳转链接todo")
    private String classLinkUrl;

    @Schema(description = "缩略图片")
    @JsonDeserialize(using = FileKeyVoDeserializer.class)
    private String picUrl;

    @Schema(description = "更多")
    private String remark;

    @Schema(description = "位置id")
    private String positionId;

    @Schema(description = "路径")
    private String position;

    @Schema(description = "经度")
    private String latitude;

    @Schema(description = "纬度")
    private String longitude;

    @Schema(description = "删除")
    private Integer deletedFlag;

    @Schema(description = "创建人")
    private Long createUserId;

    @Schema(description = "修改时间")
    private LocalDateTime updateTime;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;

}